package edu.cqie.smartfarm.service;

import com.baomidou.mybatisplus.extension.service.IService;
import edu.cqie.smartfarm.dto.FarmDTO;
import edu.cqie.smartfarm.dto.FarmQueryDTO;
import edu.cqie.smartfarm.dto.FarmUpdateDTO;
import edu.cqie.smartfarm.entity.Farm;
import edu.cqie.smartfarm.result.PageVO;
import edu.cqie.smartfarm.vo.FarmVO;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author yyw
 * @since 2024-12-26
 */
public interface IFarmService extends IService<Farm> {

    /**
     * 获取牧场列表
     * @param farmQueryDTO 查询条件
     * @return 牧场列表
     */
    PageVO<FarmVO> getFarmList(FarmQueryDTO farmQueryDTO);

    /**
     * 获取牧场详情
     * @param id 牧场id
     * @return 牧场详情
     */
    FarmVO getFarmVO(Integer id);

    /**
     * 添加牧场
     * @param farmDTO 牧场信息
     */
    void addFarm(FarmDTO farmDTO);

    /**
     * 修改牧场
     * @param farmUpdateDTO 牧场信息
     */
    void updateFarm(FarmUpdateDTO farmUpdateDTO);
}
